package com.crl.ssc.dic.service;

import com.cars.util.global.GlobalOperaCode;
import com.cars.util.list.ListUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.crl.ssc.dic.dao.DicPersonDao;
import com.crl.ssc.dic.dto.DicPersonDTO;
import com.crl.ssc.dic.model.DicPerson;
import com.crl.ssc.dic.vo.DicPersonSearchVO;
import java.util.List;

/**
 * @description: 字典管理-人员字典Service
 * @author: MqSql
 * @version: 1.0
 * @date: 2020-08-05 00:32:29
 */
@Service
public class DicPersonService {
    @Autowired
    private DicPersonDao dicPersonDao;
    /**
     * 增加
     *
     * @param dicPersonDTO
     * @return
     */
    public int add(DicPersonDTO dicPersonDTO) {
        DicPerson dicPerson = new DicPerson();
        BeanUtils.copyProperties(dicPersonDTO, dicPerson);
        return dicPersonDao.add(dicPerson);
    }
    /**
     * 修改
     *
     * @param dicPersonDTO
     * @return
     */
    public int update(DicPersonDTO dicPersonDTO) {
        DicPerson dicPerson = new DicPerson();
        BeanUtils.copyProperties(dicPersonDTO, dicPerson);
        return dicPersonDao.update(dicPerson);
    }
    /**
     * 删除
     *
     * @param id
     * @return
     */
    public int delete(Integer id) {
        DicPerson dicPerson = dicPersonDao.get(id);
        if (dicPerson  == null) {
           return GlobalOperaCode.OPERA_NOT_EXIST;
         } else {
           return dicPersonDao.delete(id);
         }
    }

    /**
     * 列表
     *
     * @param dicPersonSearchVO
     * @return
     */
    public List<DicPersonDTO> list(DicPersonSearchVO dicPersonSearchVO) {
        List<DicPerson> list = dicPersonDao.list(dicPersonSearchVO);
        List<DicPersonDTO> listResult = ListUtils.copyList(list, DicPersonDTO.class);
        return listResult;
    }
    /**
     * 记录条数
     *
     * @param dicPersonSearchVO
     * @return
     */
    public int count(DicPersonSearchVO dicPersonSearchVO) {
        return dicPersonDao.count(dicPersonSearchVO);
    }
    /**
     * 获取单个
     *
     * @param id
     * @return
     */
    public DicPersonDTO get(Integer id) {
        DicPerson dicPerson = dicPersonDao.get(id);
        DicPersonDTO dicPersonDTO = new DicPersonDTO();
        BeanUtils.copyProperties(dicPerson, dicPersonDTO);
        return dicPersonDTO;
    }
}
